home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 4 / FM Towns Free Software Collection 4 - Disc 1.iso / msdos / cc / opttbl.c < prev    next >
C/C++ Source or Header  |  1991-10-18  |  3KB  |  110 lines

  1. #include <string.h>
  2. #include "opttbl.h"
  3.  
  4. struct OPT_TBL  opt_tbl[] = {
  5.     { "-lib",    _LIB,99 },    /*  ドライバが処理するオプション  */
  6.     { "-l",        _LIB,99 },
  7.     { "-new",    _NEW, 0 },
  8.     { "-n",        _NEW, 0 },
  9.     { "-test",    _TEST,0 },
  10.     { "-t",        _TEST,0 },
  11.     { "-env",    _ENV, 1 },
  12.  
  13.     { "-ansi",    _HIGH,0 },    /*  HC386P が処理するオプション  */
  14.     { "-an",    _HIGH,0 },
  15.     { "-noansi",    _HIGH,0 },
  16.     { "-noan",    _HIGH,0 },
  17.     { "-asm",    _HIGH,0 },
  18.     { "-as",    _HIGH,0 },
  19.     { "-noasm",    _HIGH,0 },
  20.     { "-noas",    _HIGH,0 },
  21.     { "-cram",    _HIGH,0 },
  22.     { "-cr",    _HIGH,0 },
  23.     { "-nocram",    _HIGH,0 },
  24.     { "-nocr",    _HIGH,0 },
  25.     { "-debug",    _HIGH,0 },
  26.     { "-nodebug",    _HIGH,0 },
  27.     { "-define",    _HIGH,2 },
  28.     { "-def",    _HIGH,2 },
  29.     { "-ipath",    _HIGH,1 },
  30.     { "-ip",    _HIGH,1 },
  31.     { "-lines_per_page",_HIGH,1 },
  32.     { "-lin",    _HIGH,1 },
  33.     { "-list",    _HIGH,1 },
  34.     { "-lis",    _HIGH,1 },
  35.     { "-object",    _HIGH,1 },
  36.     { "-ob",    _HIGH,1 },
  37.     { "-noobject",    _HIGH,0 },
  38.     { "-noob",    _HIGH,0 },
  39.     { "-off",    _HIGH,99 },
  40.     { "-on",    _HIGH,99 },
  41.     { "-profile",    _HIGH,1 },
  42.     { "-pr",    _HIGH,1 },
  43.     { "-noprofile",    _HIGH,0 },
  44.     { "-nopr",    _HIGH,0 },
  45.     { "-tmpi1",    _HIGH,1 },
  46.     { "-tmpi2",    _HIGH,1 },
  47.     { "-tmptp",    _HIGH,1 },
  48.     { "-tpages",    _HIGH,1 },
  49.     { "-tp",    _HIGH,1 },
  50.     { "-xref",    _HIGH,1 },
  51.     { "-xr",    _HIGH,1 },
  52.     { "-noxref",    _HIGH,0 },
  53.     { "-noxr",    _HIGH,0 },
  54.     { "-kanji",    _HIGH,0 },
  55.     { "-make",    _HIGH,0 },
  56.     { "-retwc",    _HIGH,0 },
  57.  
  58.     { "-8086",    _LINK,0 },    /*  TLINKP が処理するオプション  */
  59.     { "-86",    _LINK,0 },
  60.     { "-80386",    _LINK,0 },
  61.     { "-386",    _LINK,0 },
  62.     { "-exe",    _LINK,1 },
  63.     { "-e",        _LINK,1 },
  64.     { "-relexe",    _LINK,1 },
  65.     { "-nooutput",    _LINK,0 },
  66.     { "-noo",    _LINK,0 },
  67.     { "-pack",    _LINK,0 },
  68.     { "-nopack",    _LINK,0 },
  69.     { "-dosorder",    _LINK,0 },
  70.     { "-logorder",    _LINK,0 },
  71.     { "-mindata",    _LINK,1 },
  72.     { "-mind",    _LINK,1 },
  73.     { "-maxdata",    _LINK,1 },
  74.     { "-maxd",    _LINK,1 },
  75.     { "-stack",    _LINK,1 },
  76.     { "-s",        _LINK,1 },
  77.     { "-offset",    _LINK,1 },
  78. /*    { "-off",    _LINK,1 },    コンパイラと重複  */
  79.     { "-realbreak",    _LINK,1 },
  80.     { "-realb",    _LINK,1 },
  81.     { "-minreal",    _LINK,1 },
  82.     { "-maxreal",    _LINK,1 },
  83.     { "-callbufs",    _LINK,1 },
  84.     { "-minibuf",    _LINK,1 },
  85.     { "-maxibuf",    _LINK,1 },
  86.     { "-nistack",    _LINK,1 },
  87.     { "-istksize",    _LINK,1 },
  88.     { "-onecase",    _LINK,0 },
  89.     { "-oc",    _LINK,0 },
  90.     { "-twocase",    _LINK,0 },
  91.     { "-tc",    _LINK,0 },
  92.     { "-fullwarn",    _LINK,0 },
  93. /*    { "-lib",    _LINK,0 },    ドライバ側で処理する  */
  94. /*    { "-l",        _LINK,0 },    ドライバ側で処理する  */
  95.  
  96.     { NULL,        0,    0 }
  97. };
  98.  
  99. /*  オプションをテーブルから探す  */
  100. struct OPT_TBL *FindOption( char *option )
  101. {
  102.     struct OPT_TBL *p;
  103.  
  104.     for( p = opt_tbl; p->str; p++ ) {
  105.         if( strcmpi( option,p->str ) == 0 )  return( p );
  106.     }
  107.     return( NULL );
  108. }
  109.  
  110.